package com.banmao.mall.mapper;

import com.banmao.mall.model.bo.admin.user.UserListBO;
import com.banmao.mall.model.pojo.User;
import com.banmao.mall.model.pojo.UserTotal;
import com.banmao.mall.model.vo.admin.statistic.UserTotalRowsVO;
import com.banmao.mall.model.vo.admin.user.UserVO;
import com.banmao.mall.model.vo.client.login.Client;
import com.banmao.mall.model.vo.client.login.UserInfoVO;

import java.util.List;

public interface UserMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(User record);

    int insertSelective(User record);

    User selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(User record);

    int updateByPrimaryKey(User record);

    Integer selectTotalCount();

    List<UserVO> selectUserByCondition(UserListBO userListBO);

    Client selectByUsername(String username);

    UserInfoVO selectAvatarAndNickname(Integer userId);

    List<UserTotalRowsVO> totalNumberOfUsers();
}